package com.tgy.blog.service;

import com.tgy.ao.CommentAo;
import com.tgy.page.PageQuery;
import com.tgy.page.TableDataInfo;
import com.tgy.pojo.BlogArticle;
import com.tgy.pojo.BlogCategory;
import com.tgy.result.GraceJSONResult;
import com.tgy.vo.CommentVo;
import com.tgy.vo.RecentlyCommentVo;
import com.tgy.vo.TimeLineVo;

import java.text.ParseException;
import java.util.List;

/**
 * @author tianguiyin
 * @version 1.0
 * @date 2022/7/9 19:02
 */
public interface DeskArticleService {
    TableDataInfo<BlogArticle> getIndexArticleList(PageQuery pageQuery);

    List<BlogArticle> getRankingArticleList(PageQuery pageQuery);

    List<BlogArticle> getRecommendedArticleList(PageQuery pageQuery);

    List<BlogCategory> getCategory();

    List<BlogArticle> getSimilarArticleList(String categoryIds,PageQuery pageQuery);

    TableDataInfo<BlogArticle> getArticleArticleList(BlogArticle bo,PageQuery pageQuery);

    GraceJSONResult addArticleWatch(String articleId);

    GraceJSONResult addComment(CommentAo ao);

    TableDataInfo<CommentVo> getComment(PageQuery pageQuery, String articleId);

    List<RecentlyCommentVo> getBuzzUser();

    List<RecentlyCommentVo> getRecentlyComment();

    List<TimeLineVo> getGitCommitHistory() throws ParseException;

}
